fix unselect in multiple selection (#156805)
authorErwann Chenede - <erwann.chenede@sun.com>
Mon, 15 Nov 2004 13:48:52 +0000 (13:48 +0000)
committerErwann Chenede <erwannc@src.gnome.org>
Mon, 15 Nov 2004 13:48:52 +0000 (13:48 +0000)
2004-11-15 Erwann Chenede - <erwann.chenede@sun.com>

      * gtk/gtkfilesel.c: fix unselect in multiple selection (#156805)

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkfilesel.c

index 7db585b0aba5d29e950aafa1920ec4b6958466d3..528797249586bdaebe3462b890ab8e0b6b2ab5d2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2004-11-15 Erwann Chenede - <erwann.chenede@sun.com>
+      
+       * gtk/gtkfilesel.c: fix unselect in multiple selection (#156805)
+
 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtklabel.c: Include gtkdnd.h  (#158243, Kazuki IWAMOTO)
index 7db585b0aba5d29e950aafa1920ec4b6958466d3..528797249586bdaebe3462b890ab8e0b6b2ab5d2 100644 (file)
@@ -1,3 +1,7 @@
+2004-11-15 Erwann Chenede - <erwann.chenede@sun.com>
+      
+       * gtk/gtkfilesel.c: fix unselect in multiple selection (#156805)
+
 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtklabel.c: Include gtkdnd.h  (#158243, Kazuki IWAMOTO)
index 7db585b0aba5d29e950aafa1920ec4b6958466d3..528797249586bdaebe3462b890ab8e0b6b2ab5d2 100644 (file)
@@ -1,3 +1,7 @@
+2004-11-15 Erwann Chenede - <erwann.chenede@sun.com>
+      
+       * gtk/gtkfilesel.c: fix unselect in multiple selection (#156805)
+
 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtklabel.c: Include gtkdnd.h  (#158243, Kazuki IWAMOTO)
index 7db585b0aba5d29e950aafa1920ec4b6958466d3..528797249586bdaebe3462b890ab8e0b6b2ab5d2 100644 (file)
@@ -1,3 +1,7 @@
+2004-11-15 Erwann Chenede - <erwann.chenede@sun.com>
+      
+       * gtk/gtkfilesel.c: fix unselect in multiple selection (#156805)
+
 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtklabel.c: Include gtkdnd.h  (#158243, Kazuki IWAMOTO)
index bf6585dd9f8abbc165b833e3bc1deff3e68afbe4..e75c96e55c869bffe405ff03edfb81770f24cdbb 100644 (file)
@@ -2456,8 +2456,7 @@ maybe_clear_entry:
  *
  * Retrieves the list of file selections the user has made in the dialog box.
  * This function is intended for use when the user can select multiple files
- * in the file list. The first file in the list is equivalent to what
- * gtk_file_selection_get_filename() would return.
+ * in the file list. 
  *
  * The filenames are in the encoding of g_filename_from_utf8(), which may or 
  * may not be the same as that used by GTK+ (UTF-8). To convert to UTF-8, call
@@ -2500,6 +2499,15 @@ gtk_file_selection_get_selections (GtkFileSelection *filesel)
     {
       dirname = g_path_get_dirname (filename);
 
+      if ((names->len >= 1) && 
+         (strcmp (gtk_entry_get_text (GTK_ENTRY (filesel->selection_entry)), "") == 0))
+       { /* multiple files are selected and last selection was removed via ctrl click */
+         g_free (dirname);
+         dirname = g_strdup (filename); /* as gtk_file_selection_get_filename returns dir 
+                                           if no file is selected */
+         unselected_entry = FALSE;
+       }
+
       for (i = 0; i < names->len; i++)
        {
          buf = g_filename_from_utf8 (g_ptr_array_index (names, i), -1,